package org.spa.modules.base.entity;

import java.io.Serializable;
import java.util.Date;

import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 描述: 
 * author: P0081447
 * date: 2022-03-27 22:19:51
 */
@TableName("sys_log")
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="sys_log对象", description="")
public class SysLog implements Serializable {
    private static final long serialVersionUID = 1L;

    // 
	@TableId(type = IdType.AUTO)
    private Integer id;

    // 日志类型（1登录日志，2操作日志）
	@ApiModelProperty(value = "日志类型（1登录日志，2操作日志）")
	@Excel(name = "日志类型（1登录日志，2操作日志）", width = 15)
    private Integer logType;

    // 日志内容
	@ApiModelProperty(value = "日志内容")
	@Excel(name = "日志内容", width = 15)
    private String logContent;

    // 操作类型
	@ApiModelProperty(value = "操作类型")
	@Excel(name = "操作类型", width = 15)
    private Integer operateType;

    // 操作用户账号
	@ApiModelProperty(value = "操作用户账号")
	@Excel(name = "操作用户账号", width = 15)
    private String userid;

    // 操作用户名称
	@ApiModelProperty(value = "操作用户名称")
	@Excel(name = "操作用户名称", width = 15)
    private String username;

    // IP
	@ApiModelProperty(value = "IP")
	@Excel(name = "IP", width = 15)
    private String ip;

    // 请求java方法
	@ApiModelProperty(value = "请求java方法")
	@Excel(name = "请求java方法", width = 15)
    private String method;

    // 请求路径
	@ApiModelProperty(value = "请求路径")
	@Excel(name = "请求路径", width = 15)
    private String requestUrl;

    // 请求参数
	@ApiModelProperty(value = "请求参数")
	@Excel(name = "请求参数", width = 15)
    private String requestParam;

    // 请求类型
	@ApiModelProperty(value = "请求类型")
	@Excel(name = "请求类型", width = 15)
    private String requestType;

    // 耗时
	@ApiModelProperty(value = "耗时")
	@Excel(name = "耗时", width = 15)
    private Long costTime;

    // 创建人
	@ApiModelProperty(value = "创建人")
	@Excel(name = "创建人", width = 15)
    private String createBy;

    // 创建时间
	@Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    // 更新人
	@ApiModelProperty(value = "更新人")
	@Excel(name = "更新人", width = 15)
    private String updateBy;

    // 更新时间
	@Excel(name = "更新时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

}
